package com.itdachang.design.behavioral.mediator;

/**
 * 什么场景用得到？
 * SpringMvc的 DispatcherServlet 是一个中介者，他会提取Controller、Model、View来进行调用，而无需Controller直接调用 view 之类的渲染方法
 *
 * 分布式系统中的网关
 *
 * 迪米特法则的一个典型应用
 *
 * 中介者和外观（门面）区别？
 * 中介双向操作 门面偏向于一方
 * @author gcq
 * @Create 2022-02-14
 */
public class MainTest {
    public static void main(String[] args) {
        HU8878 hu8878 = new HU8878();
        SC8633 sc8633 = new SC8633();

        ControlTower controlTower = new ControlTower();
        hu8878.setControlTower(controlTower);
        sc8633.setControlTower(controlTower);

        hu8878.fly();
        hu8878.succss();

        sc8633.fly();
    }
}